home *** CD-ROM | disk | FTP | other *** search
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: Locrian:WWDCSun:C:Extensn.h.
- * Generated using:
- * SOM Precompiler somipc: somc/smemit.c
- * SOM Emitter emith.dll: somc/smmain.c
- */
-
- /*
- *
- * Theory of Operation
- *
- *
- * Classes defined in this interface
- *
- */
-
-
- #ifndef SOM_ODExtension_h
- #define SOM_ODExtension_h
-
-
- #include <som.h>
-
- /*
- * -- This emitter treats Method Tokens as Thunks by default
- * -- Use the sc modifier "nothunks" to change this default
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * Define the class name as an object type
- */
- #ifndef ODExtension
- #define ODExtension SOMObject
- #endif
- #include <ODObject.h>
-
- /*
- * Start of user-defined types:
- */
-
- /*
- * End of user-defined types.
- */
-
- #define ODExtension_MajorVersion 0
- #define ODExtension_MinorVersion 0
-
- /*
- * External name shortening if required
- */
- #ifdef SOM_USE_SHORT_EXTERNAL_NAMES
- #define ODExtensionNewClass c
- #define ODExtensionClassData d
- #define ODExtensionCClassData x
- #endif /* SOM_USE_SHORT_EXTERNAL_NAMES */
- /*--------------Migration------------*/
- #define ODExtension_classObj ODExtensionClassData.classObject
- #define _ODExtension ODExtension_classObj
-
- /*
- * Declare the class creation procedure
- */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export on
- #endif
-
- SOMEXTERN SOMClass * SOMLINK ODExtensionNewClass(integer4 somtmajorVersion,
- integer4 somtminorVersion);
-
- /*
- * Declare the class data structure
- */
- SOMEXTERN struct ODExtensionClassDataStructure {
- SOMAny *classObject;
- somMToken InitExtension;
- somMToken GetBase;
- somMToken Release;
- }
- #ifdef SOM_NO_DATA_EXPORTS
- * ODExtensionGetClassData ( void );
- # undef ODExtensionClassData
- # define ODExtensionClassData (*ODExtensionGetClassData())
- #else
- ODExtensionClassData;
- #endif /* SOM_NO_DATA_EXPORTS */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export off
- #endif
-
-
- /*
- * Declare the C specific class data structure
- */
- SOMEXTERN struct ODExtensionCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- } ODExtensionCClassData;
-
- /*
- * New and Renew macros for ODExtension
- */
- #define ODExtensionNew() \
- ( ( ! (ODExtensionClassData.classObject) && \
- (ODExtensionNewClass(ODExtension_MajorVersion, ODExtension_MinorVersion)) ), \
- (_somNew(ODExtensionClassData.classObject)) )
- #define ODExtensionRenew(buf) \
- ( _somRenew(ODExtensionClassData.classObject, buf) )
-
- /*
- * Override method: somInit
- */
- #define ODExtension_somInit(somSelf) \
- SOMObject_somInit(somSelf)
-
- /*
- * Override method: somUninit
- */
- #define ODExtension_somUninit(somSelf) \
- SOMObject_somUninit(somSelf)
-
- /*
- * New Method: InitExtension
- */
- typedef void (SOMLINK *somTD_ODExtension_InitExtension)(ODExtension *somSelf, Environment *ev,
- ODObject** base);
- #define somMD_ODExtension_InitExtension "::ODExtension::InitExtension"
- #define ODExtension_InitExtension(somSelf,ev,base) \
- (SOM_Resolve(somSelf, ODExtension, InitExtension) \
- (somSelf,ev,base))
- #ifndef SOMGD_InitExtension
- #if (defined(_InitExtension) || defined(__InitExtension))
- #undef _InitExtension
- #undef __InitExtension
- #define SOMGD_InitExtension 1
- #else
- #define _InitExtension ODExtension_InitExtension
- #endif /* _InitExtension */
- #endif /* SOMGD_InitExtension */
-
- /*
- * New Method: GetBase
- */
- typedef ODObject* (SOMLINK *somTD_ODExtension_GetBase)(ODExtension *somSelf, Environment *ev);
- #define somMD_ODExtension_GetBase "::ODExtension::GetBase"
- #define ODExtension_GetBase(somSelf,ev) \
- (SOM_Resolve(somSelf, ODExtension, GetBase) \
- (somSelf,ev))
- #ifndef SOMGD_GetBase
- #if (defined(_GetBase) || defined(__GetBase))
- #undef _GetBase
- #undef __GetBase
- #define SOMGD_GetBase 1
- #else
- #define _GetBase ODExtension_GetBase
- #endif /* _GetBase */
- #endif /* SOMGD_GetBase */
-
- /*
- * New Method: Release
- */
- typedef void (SOMLINK *somTD_ODExtension_Release)(ODExtension *somSelf, Environment *ev);
- #define somMD_ODExtension_Release "::ODExtension::Release"
- #define ODExtension_Release(somSelf,ev) \
- (SOM_Resolve(somSelf, ODExtension, Release) \
- (somSelf,ev))
- #ifndef SOMGD_Release
- #if (defined(_Release) || defined(__Release))
- #undef _Release
- #undef __Release
- #define SOMGD_Release 1
- #else
- #define _Release ODExtension_Release
- #endif /* _Release */
- #endif /* SOMGD_Release */
- #ifndef SOM_DONT_USE_INHERITED_MACROS
- #define ODExtension_InitObject ODObject_InitObject
- #define ODExtension_IsInitialized ODObject_IsInitialized
- #define ODExtension_HasExtension ODObject_HasExtension
- #define ODExtension_GetExtension ODObject_GetExtension
- #define ODExtension_ReleaseExtension ODObject_ReleaseExtension
- #define ODExtension_Purge ODObject_Purge
- #define ODExtension_SubClassResponsibility ODObject_SubClassResponsibility
- #define ODExtension_somFree SOMObject_somFree
- #define ODExtension_somGetClass SOMObject_somGetClass
- #define ODExtension_somGetClassName SOMObject_somGetClassName
- #define ODExtension_somGetSize SOMObject_somGetSize
- #define ODExtension_somIsA SOMObject_somIsA
- #define ODExtension_somIsInstanceOf SOMObject_somIsInstanceOf
- #define ODExtension_somRespondsTo SOMObject_somRespondsTo
- #define ODExtension_somDispatchV SOMObject_somDispatchV
- #define ODExtension_somDispatchL SOMObject_somDispatchL
- #define ODExtension_somDispatchA SOMObject_somDispatchA
- #define ODExtension_somDispatchD SOMObject_somDispatchD
- #define ODExtension_somDispatch SOMObject_somDispatch
- #define ODExtension_somClassDispatch SOMObject_somClassDispatch
- #define ODExtension_somPrintSelf SOMObject_somPrintSelf
- #define ODExtension_somDumpSelf SOMObject_somDumpSelf
- #define ODExtension_somDumpSelfInt SOMObject_somDumpSelfInt
- #endif /* SOM_DONT_USE_INHERITED_MACROS */
-
- #endif /* SOM_ODExtension_h */
-